cx = [-1 0 1 1 1 0 -1 -1];
cy = [1 1 1 0 -1 -1 -1 0];

[x, y] = generateBoundaryNode(cx, cy, 500);

domain2D = createDomain(x, y);

A = assemblyMatrix(domain2D);

b = assemblyBoundaryVector(domain2D);

h = A \ b;

rx = rand(1000, 1) * 2 - 1;
ry = rand(1000, 1) * 2 - 1;

u = evaluateInteriorPoint(rx, ry, domain2D, h);

plotResult(domain2D, rx, ry, u, b);